<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- 上述3个meta标签*必须*放在最前面，任何其他内容都*必须*跟随其后！ -->
    <title>文章详情</title>
    <!-- Bootstrap -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" rel="stylesheet">

    <!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询（media queries）功能 -->
    <!-- 警告：通过 file:// 协议（就是直接将 html 页面拖拽到浏览器中）访问页面时 Respond.js 不起作用 -->
    <!--[if lt IE 9]>
    <script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>
    <![endif]-->
</head>
<body>
<!-- 导航条开始 -->
{% include 'common/_nav.html' %}
<!-- 导航条结束 -->

<div class="container">
    <div class="row">
        <div style="margin-top: 66px;">
            <div class="panel panel-default">
                <div class="panel-heading">
                    <h3>{{ article.title }}</h3>
                    <div style="font-size: 13px; color: #666;">{{ article.name }}</div>
                </div>
                <div class="panel-body">
                    {{ article.content | safe }}
                </div>
            </div>
        </div>
    </div>
    <div class="row">
        <!-- 评论开始 -->
        <form action="" id="commentForm">
            <textarea id="comment"></textarea>
            <input type="submit" value="立即评论" class="btn btn-success" style="margin-top: 10px;">
        </form>
        <!-- 评论结束 -->
    </div>
    <div class="row" style="margin-top: 20px; margin-bottom: 100px;">
        <!-- 评论列表开始 -->
        <ul class="list-group">
            {% if comments %}
                {% for comment in comments %}
                    <!-- 单条评论开始 -->
                    <li class="list-group-item">
                        <div class="media">
                            <div class="media-left">
                                <a href="#">
                                    {% if comment.avatar %}
                                        <img class="media-object"
                                             src="{{ comment.avatar }}"
                                             alt="头像" width="50" height="50" style="border-radius: 50%;">
                                    {% else %}
                                        <img class="media-object"
                                             src="https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=3023806798,280362912&fm=26&gp=0.jpg"
                                             alt="头像" width="50" height="50" style="border-radius: 50%;">
                                    {% endif %}

                                </a>
                            </div>
                            <div class="media-body">
                                <h4 class="media-heading">{{ comment.username }}</h4>
                                <div>
                                    {{ comment.content | safe }}
                                </div>
                            </div>
                        </div>
                    </li>
                    <!-- 单条评论结束 -->
                {% endfor %}
            {% else %}
                <li class="list-group-item">
                    暂无评论，您可以添加第一条评论
                </li>
            {% endif %}

        </ul>
        <!-- 评论列表结束 -->
        <nav aria-label="Page navigation" style="margin-bottom: 80px;">
            <ul class="pagination">
                {% if page.has_previous %}
                    <li>
                        <a href="?id={{ article.id }}&p={{ page.previous_page_number }}" aria-label="Previous">
                            <span aria-hidden="true">上一页</span>
                        </a>
                    </li>
                {% else %}
                    <li class="disabled">
                        <a href="#" aria-label="Previous">
                            <span aria-hidden="true">上一页</span>
                        </a>
                    </li>
                {% endif %}
                {% for middle in middle_page %}
                    {% ifequal current_page middle %}
                        <li class="active"><a href="?id={{ article.id }}&p={{ middle }}">{{ middle }}</a></li>
                    {% else %}
                        <li><a href="?id={{ article.id }}&p={{ middle }}">{{ middle }}</a></li>
                    {% endifequal %}
                {% endfor %}
                {% if page.has_next %}
                    <li>
                        <a href="?id={{ article.id }}&p={{ page.next_page_number }}" aria-label="Next">
                            <span aria-hidden="true">下一页</span>
                        </a>
                    </li>
                {% else %}
                    <li class="disabled">
                        <a href="#" aria-label="Next">
                            <span aria-hidden="true">下一页</span>
                        </a>
                    </li>
                {% endif %}

            </ul>
        </nav>
        <!-- 文章分页结束 -->
        <!-- 分页结束 -->
    </div>
</div>
<nav class="navbar navbar-inverse navbar-fixed-bottom">
    <!-- 底部开始 -->
    <div class="footer" style="text-align: center; color: white; padding: 10px;">
        <p>理想国真惠玩-张大鹏 2020年12月17日-至今</p>
        <p>备案号：京ICP 6666666</p>
    </div>
    <!-- 底部结束 -->
</nav>
<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery，所以必须放在前边) -->
<script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script>
<!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/js/bootstrap.min.js"></script>
<!-- 富文本编辑器 -->
<script type="text/javascript" src="https://cdn.jsdelivr.net/gh/iceuinet/iceEditor/src/iceEditor.min.js"></script>
<!-- 解决xss攻击 -->
<script src="https://cdn.bootcdn.net/ajax/libs/js-xss/0.3.3/xss.min.js"></script>
<script>
    //第一步：创建实例化对象
    let e = new ice.editor('comment');
    e.height = '200px';  //高度

    //第三步：配置菜单（默认加载全部，无需配置）
    e.menu = [
        'backColor',                 //字体背景颜色
        'fontSize',                  //字体大小
        'foreColor',                 //字体颜色
        'bold',                      //粗体
        'italic',                    //斜体
        'underline',                 //下划线
        'strikeThrough',             //删除线
        'justifyLeft',               //左对齐
        'justifyCenter',             //居中对齐
        'justifyRight',              //右对齐
        'indent',                    //增加缩进
        'outdent',                   //减少缩进
        'insertOrderedList',         //有序列表
        'insertUnorderedList',       //无序列表
        'superscript',               //上标
        'subscript',                 //下标
        'createLink',                //创建连接
        'unlink',                    //取消连接
        'hr',                        //水平线
        'table',                     //表格
        'files',                     //附件
        'music',                     //音乐
        'video',                     //视频
        'insertImage',               //图片
        'removeFormat',              //格式化样式
        'code',                      //源码
        'line'                       //菜单分割线
    ];

    //第四步：创建
    e.create();

    // 解决ajax提交时csrf验证的问题
    $.ajaxSetup({
        data: {csrfmiddlewaretoken: '{{ csrf_token }}'},
    });

    let editor = e;
    $("#commentForm").submit(function (e) { //uploadVideoForm为表单名称
        // 阻止默认提交
        e.preventDefault()
        // 获取用户名
        let username = getCookie('username')
        // 获取文章id
        let articleId = {{article.id}}
            console.log("文章id：", articleId)

        // 获取内容：进行过滤
        let comment = filterXSS(editor.getHTML());

        // 使用ajax提交到后台
        let url = '{% url 'article:add_comment' %}'
        $.post(url, {username, comment, articleId}, function (data) {
            // 在这里处理服务器的响应
            console.log(data)
            // 如果成功：追加评论内容：最前面
            if (data.code === 10000) {
                // 追加评论
                let html = `<li class="list-group-item">
                    <div class="media">
                        <div class="media-left">
                            <a href="#">
                                <img class="media-object"
                                     src="https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=3023806798,280362912&fm=26&gp=0.jpg"
                                     alt="头像" width="50" height="50" style="border-radius: 50%;">
                            </a>
                        </div>
                        <div class="media-body">
                            <h4 class="media-heading">${username}</h4>
                            <div>
                                ${comment}
                            </div>
                        </div>
                    </div>
                </li>`
                $(".list-group").before(html)
                // 设置编辑器内容为空
                editor.setValue("")
            }

        })
    });
</script>
</body>
</html>